package nc.itf.yst;

import nc.ui.querytemplate.querytree.IQueryScheme;
import nc.vo.pub.BusinessException;
import nc.vo.yst.groupversion.GroupversionBillVO;

public interface IGROUPVERSIONMaintain {

	public void delete(GroupversionBillVO[] clientFullVOs,
			GroupversionBillVO[] originBills) throws BusinessException;

	public GroupversionBillVO[] insert(GroupversionBillVO[] clientFullVOs,
			GroupversionBillVO[] originBills) throws BusinessException;

	public GroupversionBillVO[] update(GroupversionBillVO[] clientFullVOs,
			GroupversionBillVO[] originBills) throws BusinessException;

	public GroupversionBillVO[] query(IQueryScheme queryScheme)
			throws BusinessException;

	public GroupversionBillVO[] save(GroupversionBillVO[] clientFullVOs,
			GroupversionBillVO[] originBills) throws BusinessException;

	public GroupversionBillVO[] unsave(GroupversionBillVO[] clientFullVOs,
			GroupversionBillVO[] originBills) throws BusinessException;

	public GroupversionBillVO[] approve(GroupversionBillVO[] clientFullVOs,
			GroupversionBillVO[] originBills) throws BusinessException;

	public GroupversionBillVO[] unapprove(GroupversionBillVO[] clientFullVOs,
			GroupversionBillVO[] originBills) throws BusinessException;
	
	
	public String[] queryPKs(IQueryScheme queryScheme)
			throws BusinessException;
	
	public GroupversionBillVO[] queryBillByPK(String[] pks)
			throws BusinessException;
}
